package shujia.day05;

/*
    继承和构造方法的关系：
        1、子类的构造方法第一句默认会有一个super()， 调用的是父亲中的无参构造方法
        2、要想初始化子类，必须先初始化其父类
        3、无论子类构造方法第一句话调用的是父类中有参构造方法还是无参构造方法，都是对父亲的初始化
        4、java中的类不允许多次初始化
        5、子类构造方法中对父亲初始化的代码必须是第一句话

 */
class Fu4 {
//    Fu4(){
//        System.out.println("这是父亲中的构造方法。。。");
//    }

    Fu4(String n) {
        System.out.println("这是父亲中的有参构造方法。。。" + n);
    }
}

class Zi4 extends Fu4 {
    Zi4() {
        //super(); // 调用的是父亲中的无参构造方法
        super("hello");
        System.out.println("这是子类中的构造方法，，，");
//        super("hello");
    }

}

public class ExtendsDemo4 {
    public static void main(String[] args) {
        Zi4 zi4 = new Zi4();
    }
}
